图论建模是将现实世界的复杂连接关系(如互联网路由、状态转换)抽象为数学对象 $G = (V, E)$ 的过程。通过将实体定义为顶点 (Vertex) 并将关系定义为边 (Edge),我们能够利用统一的抽象数据类型 (ADT) 和算法来解决多样化问题。
核心组件定义
- 顶点 (Vertex): 又称节点。带有“键” (Key) 作为唯一标识,并可携带“有效载荷” (Payload)。
- 边 (Edge): 连接两个顶点,表示其间存在关系。可以是单向(有向图)或双向。
- 权重 (Weight): 边上的数值,代表成本(如距离、延迟、带宽)。
数学严谨性
数学上,$G = (V, E)$。其中 $V$ 是顶点集,$E$ 是二元组 $(v, w)$ 构成的边集,其中 $v, w \in V$。这种高度抽象的结构使我们能够用同一套 BFS/DFS 算法解决从地图导航到社交网络推荐的所有问题。
建模启示:状态空间图
在解决逻辑谜题(如水壶问题)时,每一个合法状态都是顶点,而每一次合法操作则是边。解决问题的过程就是寻找从初始顶点到目标顶点的路径。